czaz: Php Datei

Hab mir mal vor einer weile das hier geschrieben =),

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
          "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<TITLE></TITLE>
</head>
<body>

<table>
<form action="eintrag.php" method="post">

<tr><td colspan="3">Passwort</td></tr>
<tr><td colspan="3"><input type="password" name="passwort" size="20" maxlength="30"></td></tr>

<tr><td>Tag</td><td>Monat</td><td>Jahr</td><td>Uhrzeit</td></tr>
<tr><td><input name="ttag" type="text" size="5" maxlength="2"></td>
<td><input name="tmonat" type="text" size="5" maxlength="2"></td>
<td><input name="tjahr" type="text" size="5" maxlength="4"></td>
<td><input name="euhrzeit" type="text" size="5" maxlength="5"></td></tr>

<tr><td colspan="4">Einsatzdauer</td></tr>
<tr><td colspan="4"><textarea cols="50" rows="3" name="edauer" maxlenth="100"></textarea></td></tr>

<tr><td colspan="4">Einsatzgebiet</td></tr>
<tr><td colspan="4"><textarea cols="50" rows="3" name="egebiet" maxlenth="100"></textarea></td></tr>

<tr><td colspan="4">Einsatzkr&auml;fte</td></tr>
<tr><td colspan="4"><textarea cols="50" rows="3" name="ekraefte" maxlenth="100"></textarea></td></tr>

<tr><td colspan="4">Text</td></tr>
<tr><td colspan="4"><textarea cols="50" rows="10" name="etext" maxlenth="2000"></textarea></td></tr>

<tr><td valign="top"><input type="submit" value="Eintragen" class="schalter"></td>
<td valign="top"><input type="reset" value="Felder l&ouml;schen" class="schalter"></td></tr>
</form>

<?php

if ($_POST["passwort"] == "") {

if ($_POST["ttag"] <> "") {

$dbf = dbase_open("einsaetze.dbf",2);
$anzahl = dbase_numrecords($dbf);
$index =  time();
$tjahr = $_POST["tjahr"];
$tmonat = $_POST["tmonat"];
$ttag = $_POST["ttag"];
$etext = $_POST["etext"];
$euhrzeit = $_POST["euhrzeit"];
$edauer = $_POST["edauer"];
$egebiet = $_POST["egebiet"];
$ekraefte = $_POST["ekraefte"];

if ($tjahr < 2000) {$tjahr = $tjahr + 2000;}
$esort = $tjahr*10000 + $tmonat*100 + $ttag;

$depp = "<b>Achtung - Falscheintrag, dieses Datum gibt es nicht!</b><br>";

if ($tmonat > 12) {$etext = $depp." ".$etext;}
if ($ttag > 31) {$etext = $depp." ".$etext;}
if ($tmonat == 4) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 6) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 9) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 11) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 2) { if ($ttag > 29) {$etext = $depp." ".$etext;} }

$sj = bcmod($tjahr,4);

if ($tmonat == 2) { if($sj <> 0) { if($ttag > 28) {$etext = $depp." ".$etext;} } }

if ($ttag == "1") {$ttag = "01";}
if ($ttag == "2") {$ttag = "02";}
if ($ttag == "3") {$ttag = "03";}
if ($ttag == "4") {$ttag = "04";}
if ($ttag == "5") {$ttag = "05";}
if ($ttag == "6") {$ttag = "06";}
if ($ttag == "7") {$ttag = "07";}
if ($ttag == "8") {$ttag = "08";}
if ($ttag == "9") {$ttag = "09";}

if ($tmonat == "1") {$tmonat = "01";}
if ($tmonat == "2") {$tmonat = "02";}
if ($tmonat == "3") {$tmonat = "03";}
if ($tmonat == "4") {$tmonat = "04";}
if ($tmonat == "5") {$tmonat = "05";}
if ($tmonat == "6") {$tmonat = "06";}
if ($tmonat == "7") {$tmonat = "07";}
if ($tmonat == "8") {$tmonat = "08";}
if ($tmonat == "9") {$tmonat = "09";}

$edatum = $ttag.".".$tmonat.".".$tjahr;

$dummy = array(
 $esort,
 $edatum,
 $euhrzeit,
 $edauer,
 $egebiet,
 $ekraefte,
 $etext,
 $index);

dbase_add_record($dbf,$dummy);
dbase_close($dbf);

echo "<tr><td colspan=\"3\">Die Daten wurden erfolgreich gesendet.</td></tr>\n";
}

}

?>

</table>

<br><br><a href="../intern/index.php">zur&uuml;ck</a>

</body>
</html>

soo jetzt wollt ich es aber umändern in folgendes:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
          "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<TITLE></TITLE>
</head>
<body>

<table>
<form action="eintrag.php" method="post">

<tr><td colspan="3">Passwort</td></tr>
<tr><td colspan="3"><input type="password" name="passwort" size="20" maxlength="30"></td></tr>

<tr><td>Tag</td><td>Monat</td><td>Jahr</td><td>Uhrzeit</td></tr>
<tr><td><input name="ttag" type="text" size="5" maxlength="2"></td>
<td><input name="tmonat" type="text" size="5" maxlength="2"></td>
<td><input name="tjahr" type="text" size="5" maxlength="4"></td>
<td><input name="euhrzeit" type="text" size="5" maxlength="5"></td></tr>

<tr><td colspan="4">Einsatzdauer</td></tr>
<tr><td colspan="4"><form action="select.htm">
  <p>
    <select name="edauer" size="1">
      <option>15 Minuten</option>
      <option>30 Minuten</option>
      <option>45 Minuten</option>
      <option>1 Stunden</option>
      <option>2 Stunden</option>
 <option>3 Stunden</option>
 <option>4 Stunden</option>
 <option>5 Stunden</option>
      <option>6 Stunden</option>
 <option>7 Stunden</option>
 <option>8 Stunden</option>
    </select>
  </p>
</form></</td></tr>

<tr><td colspan="4">Einsatzgebiet</td></tr>
<tr><td colspan="4><form action="select.htm">
  <p>
    <select name="egebiet" size="1">
      <option>Stuttgart - Rot</option>
      <option>Stuttgart - Zuffenhausen</option>
      <option>Stuttgart - M&ouml;nchfeld</option>
      <option>Stuttgart - Zazenhausen</option>
      <option>Stuttgart - Feuerbach</option>
 <option>Stuttgart - Bad Cannstatt</option>
 <option>Stadtgebiet Stuttgart</option>
    </select>
  </p>
</form></td></tr>


<tr><td colspan="4">Einsatzkr&auml;fte</td></tr>
<tr><td colspan="4"><form action="select.htm">
  <p>
    <select name="ekraefte" size="5" multiple>
      <option>LF 8/6</option>
      <option>LF 16 TS</option>
      <option>LF 8/18</option>
      <option>SW 2000</option>
      <option>MTF</option>
    </select>
  </p>
</form></td></tr>

<tr><td colspan="4">Text</td></tr>
<tr><td colspan="4"><textarea cols="50" rows="10" name="etext" maxlenth="2000"></textarea></td></tr>

<tr><td valign="top"><input type="submit" value="Eintragen" class="schalter"></td>
<td valign="top"><input type="reset" value="Felder l&ouml;schen" class="schalter"></td></tr>
</form>

<?php

if ($_POST["passwort"] == "") {

if ($_POST["ttag"] <> "") {

$dbf = dbase_open("einsaetze.dbf",2);
$anzahl = dbase_numrecords($dbf);
$index =  time();
$tjahr = $_POST["tjahr"];
$tmonat = $_POST["tmonat"];
$ttag = $_POST["ttag"];
$etext = $_POST["etext"];
$euhrzeit = $_POST["euhrzeit"];
$edauer = $_POST["edauer"];
$egebiet = $_POST["egebiet"];
$ekraefte = $_POST["ekraefte"];

if ($tjahr < 2000) {$tjahr = $tjahr + 2000;}
$esort = $tjahr*10000 + $tmonat*100 + $ttag;

$depp = "<b>Achtung - Falscheintrag, dieses Datum gibt es nicht!</b><br>";

if ($tmonat > 12) {$etext = $depp." ".$etext;}
if ($ttag > 31) {$etext = $depp." ".$etext;}
if ($tmonat == 4) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 6) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 9) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 11) { if ($ttag > 30) {$etext = $depp." ".$etext;} }
if ($tmonat == 2) { if ($ttag > 29) {$etext = $depp." ".$etext;} }

$sj = bcmod($tjahr,4);

if ($tmonat == 2) { if($sj <> 0) { if($ttag > 28) {$etext = $depp." ".$etext;} } }

if ($ttag == "1") {$ttag = "01";}
if ($ttag == "2") {$ttag = "02";}
if ($ttag == "3") {$ttag = "03";}
if ($ttag == "4") {$ttag = "04";}
if ($ttag == "5") {$ttag = "05";}
if ($ttag == "6") {$ttag = "06";}
if ($ttag == "7") {$ttag = "07";}
if ($ttag == "8") {$ttag = "08";}
if ($ttag == "9") {$ttag = "09";}

if ($tmonat == "1") {$tmonat = "01";}
if ($tmonat == "2") {$tmonat = "02";}
if ($tmonat == "3") {$tmonat = "03";}
if ($tmonat == "4") {$tmonat = "04";}
if ($tmonat == "5") {$tmonat = "05";}
if ($tmonat == "6") {$tmonat = "06";}
if ($tmonat == "7") {$tmonat = "07";}
if ($tmonat == "8") {$tmonat = "08";}
if ($tmonat == "9") {$tmonat = "09";}

$edatum = $ttag.".".$tmonat.".".$tjahr;

$dummy = array(
 $esort,
 $edatum,
 $euhrzeit,
 $edauer,
 $egebiet,
 $ekraefte,
 $etext,
 $index);

dbase_add_record($dbf,$dummy);
dbase_close($dbf);

echo "<tr><td colspan=\"3\">Die Daten wurden erfolgreich gesendet.</td></tr>\n";
}

}

?>

</table>

<br><br><a href="../intern/index.php">zur&uuml;ck</a>

</body>
</html>

aber wenn ich nun auf senden drücke passiert nichts, kann mir da jemand helfen ?

danke im vorraus

  1. Moin!

    aber wenn ich nun auf senden drücke passiert nichts, kann mir da jemand helfen ?

    Definiere "nichts".

    MFFG (Mit freundlich- friedfertigem Grinsen)

    fastix®

    --
    Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development
    1. Moin!

      aber wenn ich nun auf senden drücke passiert nichts, kann mir da jemand helfen ?

      Definiere "nichts".

      MFFG (Mit freundlich- friedfertigem Grinsen)

      fastix®

      Normal auf Submit Button geht es in die Datenbank und unten kommt die Meldung
      " Daten erfolgreich übermittelt"
      aber mann kann den submit knopf hämmern und es passiert nix ^^
      Gruß!

      1. Moin!

          
        error_reporting(E_ALL);  
        $dbf = dbase_open("einsaetze.dbf",2);  
        if (!$dbf) die ("Der Programierer sollte einen Blick ins error_log werfen.")  
        
        

        Rechte an der Datei? Eventueller Safe-Mode?

        -> http://de.php.net/manual/de/function.dbase-open.php

        MFFG (Mit freundlich- friedfertigem Grinsen)

        fastix®

        --
        Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development
  2. Hi,

    Hab mir mal vor einer weile das hier geschrieben =),

    Vollkommen unkommentierten Code in so einer Masse hier abzuladen, ist schon eine kleine Unverschaemtheit.

    aber mann kann den submit knopf hämmern und es passiert nix ^^

    Dann *debugge*.

    Kontrollausgaben der uebergebenen Variablen, und Abglich mit dem, was man *erwartet* hat, ist das allererste.

    Und feuere nicht einfach irgendeinen Kram an die DB ab, und wundere dich dann, wenn "nichts passiert" - sondern implementiere sinnvolle Fehlerbehandlung.

    $tjahr = $_POST["tjahr"];
    $tmonat = $_POST["tmonat"];
    ...

    Es wird hier immer wieder angemerkt, dass diese "Umkopiererei" von GET-/POST-Werten absoluter Nonsens ist. Es ist total unnoetig und verschleiert die Herkunft der Werte, was spaeter gefaehrlich werden kann, wenn dann Plausibiliserungen und kontextgerechte Behandlung vergessen werden.

    if ($ttag == "1") {$ttag = "01";}
    if ($ttag == "2") {$ttag = "02";}
    if ($ttag == "3") {$ttag = "03";}
    ...

    Himmel, so'n Murks kann doch nicht dein Ernst sein.
    sprintf/number_format im Manual anschauen, aber fix.

    MfG ChrisB

    --
    „This is the author's opinion, not necessarily that of Starbucks.“
  3. heißt was genau soll ich machen ?

    1. Hi,

      heißt was genau soll ich machen ?

      Das, was wir geschrieben haben.

      Und falls du das nicht verstanden haben solltest, dann bitte nicht bloed "hae?" fragen - denn nicht viel mehr ist deine obige Frage doch wohl - sondern *konkret* beschreiben, *was* du daran nicht verstanden hast.

      MfG ChrisB

      --
      „This is the author's opinion, not necessarily that of Starbucks.“